/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package BancoDeDados;

import java.sql.Connection;
import java.sql.Statement;

/**
 * ConexaoBD
 * 
 * Versao 1.0
 * 
 * Data Criação 23/11/2013
 *
 * @author Igor
 */
public interface ConexaoBD {
    //Metodos Getters e Setters
    /**
     * @return the con
     */
    public Connection getCon();

    /**
     * @param con the con to set
     */
    public void setCon(Connection con);

    /**
     * @return the stm
     */
    public Statement getStm();

    /**
     * @param stm the stm to set
     */
    public void setStm(Statement stm);

    //Outros Metodos
    /**
     * Preenche os campos de conexao, driver, etc, do Banco de Dados
     */
    public void gerenciarConfiguracoes();

    /**
     * Inicializa conexao com o Banco de Dados
     * @throws Exception 
     */
    public void startDB() throws Exception;

    /**
     * Finaliza conexao com o Banco de Dados
     * @throws Exception 
     */
    public void stopDB() throws Exception;
    
    /**
     * Restart da conexao com o Banco de Dados
     * @throws Exception 
     */
    public void restartDB() throws Exception;
}
